<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>

<body>
  <!-- 1. 文件选择框 -->
  <input type="file" id="file1" />
  <!-- 2. 上传文件的按钮 -->
  <button id="btnUpload">上传文件</button>
  <br />
  <!-- 3. img 标签，来显示上传成功以后的图片 -->
  <img src="" alt="" id="img" width="800" />

  <script>
    // 接口地址： http://www.liulongbin.top:3006/api/upload/avatar

    // 1. 获取到文件上传按钮
    const btnUpload = document.querySelector('#btnUpload')
    const fileInput = document.querySelector('#file1')
    const img = document.querySelector('#img')
    // 2. 为按钮绑定单击事件处理函数
  btnUpload.addEventListener('click',function(){
      if(fileInput.files.length === 0){
        return alert('请选择要上传的文件！')
      }
     // 将用户选择的文件，添加到FormData中、
     const fd = new FormData() 
    //  注意这里不是表单，只能通过append追加
     fd.append('avatar',fileInput.files[0])
     const xhr = new XMLHttpRequest()
     xhr.open('POST','http://www.liulongbin.top:3006/api/upload/avatar')
     xhr.send(fd)
     xhr.onreadystatechange = function(){
      if(xhr.readyState === 4 && xhr.status === 200){
      //  console.log(JSON.parse(xhr.responseText))
       const {status,url,message} = JSON.parse(xhr.responseText)
        if(status ===200){
          // 上传成功
          img.src = `http://www.liulongbin.top:3006${url} `
        }else{
          // 上传失败
          console.log(`图片上传失败！${message}`)  
        }
      }
     }
  })
  
     
     
   
    
  </script>
</body>

</html>